Power train control method

ABSTRACT

A method of controlling a power train composed of an engine and a transmission is disclosed wherein a control for the engine and a control for the transmission are integrated in a single control program. The method comprises detecting a change in the engine operating state, deciding which one of a plurality of control programs is required for the change in the engine operating state, placing a priority level on the control program decided, and activating the decided control program at a timing scheduled on the priority level in accordance with a predetermined control logic and controlling both the engine and the transmission in an integrated manner.

CROSS-REFERENCES TO RELATED APPLICATIONS

The related applications are as follows:

(1) U.S. patent application Ser. No. 683,354, filed by Hitoshi TAKEDA on Dec. 19, 1984;

(2) U.S. patent application Ser. No. 678,885, filed by Akio HOSAKA et al on Dec. 6, 1984;

(3) U.S. patent application Ser. No. 680,786, filed by Akio HOSAKA et al on Dec. 12, 1984 (now U.S. Pat. No. 4,615,410);

(4) U.S. patent application Ser. No. 680,881, filed by Akio HOSAKA on Dec. 12, 1984;

(5) U.S. patent application Ser. No. 680,785, filed by Akio HOSAKA on Dec. 12, 1984;

(6) U.S. patent application Ser. No. 678,886, filed by Akio HOSAKA on Dec. 6, 1984;

(7) U.S. patent application Ser. No. 698,377, filed by Hitoshi TAKEDA et al on Feb. 5, 1985; and

(8) U.S. patent application Ser. No. 694,409, filed by Akio HOSAKA on Jan, 24, 1985.

BACKGROUND OF THE INVENTION

The present invention relates to a method of controlling a power train of an automotive vehicle. The term "power train" is used herein to mean a power generating and delivery system which includes an engine and a transmission.

The power train of this kind is used for example as a drive system of an automotive vehicle. Until recently, it has been the common practice in controlling the power train to control an engine in a discrete manner from controlling a transmission as reported for example in an SAE technical paper 830423 published by Society of Automotive Engineering (SAE). In controlling an engine, an engine controller detects data from various portions of the engine and adjusts a fuel supply, an ignition timing, an EGR flow rate and an intake air flow rate to optimal values resulting from computations on the detected data. In controlling a transmission, a transmission controller detects an engine load and a vehicle speed, and decides a gear position to be established in the transmission and performs a lock-up control based on the result of computations on the detected data. The engine controller is connected to the transmission controller such that operation data are communicated with each other thereby to restrain and control each other.

However, this conventional control method wherein the power train is controlled such that the engine and the transmission are controlled in the discrete manner by different controllers which operate in a discrete manner requires a very expensive control system consisting of a great number of components, causing a high failure probability and a disadvantage in weight. Besides, it is difficult to control the engine in synchronization with the control of the transmission. That is, the requirement of an action of a high priority level cannot cause an immediate initiation of the action required while a program is being executed and the execution of the action required cannot be initiated till the completion of the program under execution, thus rendering the overall control of the power train incorrect.

SUMMARY OF THE INVENTION

An object of the present invention is to provide a method of controlling a power train of an automotive vehicle wherein an engine and a transmission are controlled in an integrated and synchronous manner by a single controller.

According to the present invention there is provided a method of controlling a power train of an automotive vehicle, the power train including an engine and a transmission, the method comprising the steps of:

detecting operating conditions of the engine and generating operating conditions indicative signals indicative of the operating conditions detected;

determining a change in said operating conditions indicative signals and generating a change indicative signal indicative of said change determined;

preparing a plurality of control programs, each including instructions to modify operation of the engine and also operation of the transmission such as to cope with a transition in operating state of the power train;

selecting one of said plurality of control programs based on judgement on said change indicative signal and generating an activation requirement of the execution of said selected one of said control programs;

placing a priority level on said activation requirement signal; and

initiating the execution of said decided control program at a timing scheduled on said priority level in accordance with a predetermined control logic, thereby causing both the engine and the transmission to perform the operation modified as instructed by said decided control program.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a plan view of an automotive vehicle illustrating a control system for carrying out a method according to the present invention;

FIG. 2 is a block diagram illustrating a control unit with its various input and output signals;

FIG. 3 is a detailed block diagram of the control unit;

FIG. 4 illustrates a control concept carried out by the control unit;

FIGS. 5(A) and 5(B), when combined, illustrate in detail the control relationship among programs stored in the control unit;

FIG. 6 is a flowchart of an operation state dependent job activation reservation program 5310; and

FIG. 7 is a flowchart of an acceleration control program 6100.

DETAILED DESCRIPTION OF THE INVENTION

Hereinafter, the present invention is described in detail based on an illustrated embodiment.

Referring to FIG. 1, there is shown one example of a control system for carrying out a method according to the present invention together with a power train of an automative vehicle which is to be controlled. In the Figure, 1L, 1R designate left and right front wheels, respectively, 2L, 2R designate left and right rear wheels, 3 designates an engine, 4 designates a transmission (automatic transmission), 5 designates a propeller shaft, 7 designates a differential gear, 8L, 8R designate left and right rear axles. The front wheels 1L, 1R designate change direction wheels which are controlled by a steering wheel 9 to change direction of the automotive vehicle. The rear wheels 2L, 2R are driving wheels of the automotive vehicle which receive the output of the engine 3 that is delivered via the transmission 4, propeller shaft 5, differential gear 7 and axles 8L, 8R.

The start, operation and stop of the engine 3 are subject to control by an ignition switch 10. The engine 3 can increase its output as the accelerator pedal 11 is depressed. The output of the engine 3 is delivered in the above mentioned delivery path to the rear wheels 2L, 2R, enabling the vehicle to run. The vehicle can be stopped by depressing a brake pedal 12 and parked by manipulating a parking brake 13.

The transmission 4, which forms together with the engine 3 a power train to be controlled by the method according to the present invention, is rendered to establish a selected power delivery path in response to a manipulated position assumed by a select lever 14, such as a parking (P) range, a reverse (R) range, a neutral (N) range, a forward automatic drive (D) range, a manual second (II) brake range or a manual first (I) brake range and delivers the power from the engine 3 to the propeller shaft 5 with a selected gear position in a selected one of the drive ranges R, D, II and I.

The power train control system for carrying out the method according to the present invention comprises a control unit 1000 which is common to the engine 3 and the transmission 4. This control unit is always supplied via an electric path 16 with an electric power which serves as a direct continuously connected electric power source from a vehicle battery 15 and it operates on electric power from the vehicle battery 15 which is supplied thereto as a main power source via a power source relay 17 that is closed when the ignition switch 10 is turned ON. Although they are described later, those signals are fed to the control unit 1000 and include a signal from the ignition switch 10 via an electric path 18, a signal from the accelerator pedal 11 via an electric path 19, a signal from the brake pedal 12 via an electric path 20, a signal from the parking brake lever 13 via an electric path 21, a signal from the select lever 14 via an electric path 22, signals indicative of a crank angle of the engine 3, a crankshaft torque, an intake air flow rate and a temperature via a wire harness 23, and signals indicative of an output shaft revolution speed of the transmission 4 and an output shaft torque thereof via a wire harness 24. Based on these input signals arithmetic operations are performed and the results are fed via the wire harnesses 23, 24 to the engine 3 and the transmission 4, respectively, thereby to control them. The control unit 1000 is also supplied via an electric path 26 with data input signals from a data input device 25 manually operable by a driver, alters its operation mode depending on these data input signals and feeds various kinks of data via an electric path 27 to a display 28 where the data are displayed.

Referring to FIG. 2, these input and output signals to and from the control unit 1000 are described in detail one after another. Among the input signals, an ignition switch signal 101 is indicative of which one of the operating positions the ignition switch 10 assumes including a LOCK position, an OFF position, an ACCESSORY position, an ON position and a START position, and it is fed to the control unit 1000 via the electric path 18. Since the functions performed when the ignition switch 10 assumes these operation positions are well known, the description is omitted. A select signal 102 is indicative of which one of the before mentioned drive ranges P, R, N, D, II, I is selected via the electric path 28. An accelerator signal 103 which is a voltage signal variable in proportion to the depression degree of the accelerator pedal 11 is obtained by a potentiometer and fed to the control unit 1000 via the electric path 19. A brake signal 104 which is a voltage signal variable in proportion to the depression degree of the brake pedal 12 is obtained by a potentiometer and the like and fed to the control unit 1000 via the electric path 20. A parking brake signal 105 is obtained by a potentiometer and the like that is movable with the parking brake lever 13, which signal is a voltage signal variable in proportion to an operating position of the parking brake lever 13 and fed to the control unit 1000 via the electric path 21. Instead, the brake signal 104 and the parking brake signal 105 may be obtained by pressure sensors, each responsive to a bias force (a braking force) of a brake element. The signals 103, 104 and 105, although they were described previously as analog signals, may take the digital form by using encoders and the like.

A data input signal 106 is a signal from a key board of the data input device 25 or a switch and fed to the control unit 1000 via the electric path 26. The data input signal 106 specifies one of the operation modes of the control unit 1000, for example a control operation mode and a self-checking mode or a power mode and a fuel economy mode. The main power source 107 is fed to the control unit 1000 via the power source relay 17 from the vehicle battery 15. The continuously connected power source 108 is always fed to the control unit 1000 via the electric path 16 from the battery 15.

A crank angle signal 120 is a pulse signal which is generated each time after the engine crankshaft has turned through a predetermined angular angle, which signal is fed to the control unit 1000 via the wire harness 23. This signal is generated by a photoelectric detector which detects a light passing through a slit plate, i.e., a disc rotatable with the crankshaft and formed with equiangularly distant slits. A crankshaft torque signal 121 is a voltage signal variable in proportion to the torque impressed on the crankshaft, the torque being detected using the piezoelectric effect. This signal is fed to the control unit 1000 via the wire harness 23. This signal 121 can be obtained by a torque sensor. The air flow signal 122 is a signal variable in inverse proportion to the intake air flow rate admitted to the engine, and it is fed to the control unit 1000 via the wire harness 32. This signal is obtained by an air flow meter usually used in a fuel injection type engine. An engine temperature signal 123 is a signal variable in proportion to a coolant temperature of the engine 3, which signal is fed to the control unit 1000 via the wire harness 23. This signal is obtained by a thermistor which is sensitive to the temperature of an engine coolant.

An output shaft revolution speed signal 140 is a signal variable in proportion to the revolution speed of the output shaft of the transmission 4, which signal is fed to the control unit 1000 via a wire harness 24. This signal can be obtained by computing on a cycle or a frequency of a pulse signal that is generated by a similar means used to generate the crank angle signal 120. The output shaft torque signal 141 is a voltage signal which is proportional to the output shaft torque of the transmission 4, which signal is fed to the control unit 1000 via the wire harness 24. This signal can be generated by a similar torque sensor used to generate the crankshaft torque signal 121.

Hereinafter, output signals are described. The power source relay control signal 201 is provided to effect ON/OFF control of the power source relay 17 such that when the engine is in operation where the ignition switch 10 is placed to ON or START position, the power source relay 17 is turned ON, connecting the main power source 107 from the battery 15 via this power source relay 17 to the control unit 1000, and the power source relay 17 is kept closed even after the ignition switch 10 has been turned OFF until saving of the data is completed, keeping the connection of the main power source 107 to the control unit 1000. The data output signal 202 is delivered via the electric path 27 to the display 28, causing same to display a reduction ratio established in the transmission 4, a range selected by the select lever 14, and a result of diagnosis of the power train control system.

An air flow control signal 220 contains an instruction that is responsive to the accelerator signal 103 and is supplied via the wire harness 23 to the well known throttle actuator mounted to the engine 3, causing the throttle actuator to adjust the throttle opening degree to a level corresponding to the depression degree information (accelerator signal 103) of the accelerator pedal 11, thereby to adjust the air flow rate admitted to the engine 3 to a value corresponding to the air flow control signal 220. The air flow control signal 220 adjusts the throttle opening degree via the throttle actuator so as to keep the idle revoltion constant. When the data input signal 106 instructs a constant speed crusing, the air flow control signal 220 adjusts via the throttle actuator the throttle opening degree as a result of comparison of a measured vehicle speed with an instructed vehicle speed value (a feedback control) in order to cause the vehicle to run at the instructed vehicle speed value. The fuel injection control signal 221 is a pulse signal which controls the opening time of a fuel injection valve mounted to the engine, which signal is delivered from the control unit 1000 via the wire harness 23. The basic control concept is that the above mentioned valve opening time duration (fuel injection amount), which is proportional to the intake air flow rate, is computed from the crank angle signal 120 and the air flow signal 122, and then this result is corrected in various manners, and the result is output in terms of the fuel injection control signal 221 in synchronization with the operation of the engine 3. The ignition control signal 222 is a signal which controls the ignition energy and the ignition timing by controlling in synchronization with the crank angle signal 120, the time during which current is allowed to pass through a primary coil of an ignition coil provided to the engine 3 and the termination timing of the current supply. This signal is delivered from the control unit 1000 via the wire harness 23. The ignition energy is controlled such that it is kept unchanged with a variation in the engine revolution speed (the cycle or the frequency of the crank angle signal 120) and a variation in the voltage of the battery 15, and the ignition timing is determined on the engine revolution speed and crankshaft torque taking the output torque, fuel economy and exhaust gases into account. The EGR control signal 223 is a signal relating to the opening degree of an exhaust gas recirculation valve (exhaust gas recirculation rate), which signal is delivered from the control unit 1000 via the wire harness 23. The EGR valve opening as mentioned above is determined from the engine revolution speed and the crankshaft torque taking the exhaust gas and fuel economy into account.

A reduction ratio control signal 240 is a signal corresponding to a reduction ratio (gear position) established in the transmission 4 and delivered from the control unit 1000 via the wire harness 24. The reduction ratio is determined from the input torque to the transmission (the engine crankshaft torque), i.e., the signal 121 or the signal (accelerator signal 103, intake air flow signal 122) corresponding to this signal 121, and the vehicle speed (output shaft revolution speed signal 140) taking the driving torque and fuel economy vibrations into account. The reduction ratio control signal 240 controls various kinds of shift solenoids of the transmission 4 in order to establish the desired gear position. The lock-up control signal 241 is a signal which controls connection and disconnection between the input and output elements of the torque converter in the transmission 4 and is delivered from the control unit 1000 via the wire harness 24. Lock-up control signal 241 is determined from the crankshaft torque (signal 121) and the vehicle speed (signal 140) taking the fuel economy and vibrations into account, in order to control the above mentioned connection or if desired a relative rotation (slip) between the input and output elements of the torque converter.

Hereinafter, referring to FIG. 3, a practical example of the architecture of the control unit 1000 is described.

In this Figure, 1100 designates a signal shaper circuit which forms an input portion of the before mentioned various input signals 101 to 107, 120 to 123, 140, 141. It functions to eliminate noise of these input signals and absorbs a surge thereof so as to prevent malfunction of the control unit 1000 caused by the noise and destruction thereof caused by the surge, and it also performs amplification of the various input signals and conversion thereof so as to shape these signals, thereby allowing an input interface circuit 1200 to perform an accurate operation. The input interface circuit 1200 effects analog to digital (A/D) conversion of the various input signals which have been shaped by the circuit 1100, counts pulses for a predetermined time, converts these signals into digital coded signals which can be read as input data by a central processing unit (CPU) 1300 and stores them into the corresponding internal registers. The CPU 1300 operates in synchronization with a clock signal generated based on an oscillating signal generated by a crystal oscillator 1310. The CPU 1300 is connected via a bus 1320 to the input interface circuit 1200, a memory 1400, an output interface circuit 1500 and an operation timer circuit 1350. When, in operation, it executes a control program stored in a mask ROM 1410 and a PROM 1420 of the memory 1400, the CPU 1300 reads various input data from the corresponding registers within the input interface circuit 1200, performs arithmetic operations on these input data to generate various output data, delivers these output data to the corresponding registers within the output interface circuit 1500 with a predetermined timing. The memory 1400 is a storage device including in addition to the above mentioned mask ROM 1410 and the PROM 1420, a RAM 1430 and a storage holding memory 1440. The mask ROM 1410 is used to permanently store control programs and data used in executing the programs. The PROM 1420 is used to permanently store vehicle speed values, control programs which are subject to alteration depending upon the engine 3 and the transmission in terms of their kinds, which data are written into the PROM 1420 when the latter is installed in the control system. The RAM 1430 is a random access memory which is able to read and write data and used to temporarily store intermediate data resulting from arithmetic operations performed by the CPU 1300, and temporarily store the final data resulting from the arithmetic operations executed by the CPU 1300 before they are delivered to the output interface circuit 1500. The storage contents immediately disappear when the main power source 107 is disconnected when the ignition switch 10 is turned OFF. The storage holding memory 1440 is used to store such data as those intermediate data and final data of the arithmetic operations executed by the CPU 1300 which are to be held even after the automotive vehicle stops its operation, and it can hold the above mentioned data owing to the continuously connected power source 108 even after the main power source 107 is disconnected when the ignition switch 10 is turned OFF.

The operation timer circuit 1350 is provided to reinforce the facilities of the CPU 1300. It comprises a multiplication circuit for speeding up processing in the CPU 1300, an interval timer for causing an interrupt signal upon elapse of a predetermined time and a free-running counter used for measuring a time elapsed in the CPU 1300 for effecting a shift from a predetermined event to a next event and measuring the instant when the event takes place. The output interface circuit 1500 stores the output data from the CPU 1300 into the corresponding internal registers. It converts these data into pulse signals or into switching signals which go into "1" or "0" before delivering them to a drive circuit 1600. The drive circuit 1600 is a power amplifier circuit which performs voltage or current amplification of the signals from the output interface circuit 1500 so as to produce the before mentioned various output signals 201, 202, 220 to 223, 240, 241.

Designated by 1700 is a backup circuit which is activated by a monitor signal 1710 caused by monitoring the signals produced by the drive circuit 1600. When it is activated indicating that the CPU 1300 or the memory 1400 has failed to normally operate due to trouble, the backup circuit 1700 receives a portion of the signals from the signal shaper circuit 1100 and generates output signals which enables the engine 3 and the transmission 4 to continue to operate such that the automotive vehicle can continue its running and also a switching signal 1730 informing the occurrence of a trouble. The signals 1720 and 1730 are supplied to a switching circuit 1750, causing the switching circuit 1750 to cut off signals from the output interface circuit 1500 and supply in lieu thereof the signals 1720 from the backup circuit 1700 to the drive circuit 1600, thereby to enable the automotive vehicle to safely run to an auto repair shop.

Designated by 1800 is a power source circuit which is supplied with the main power source 107 and the continuously connected power source 108. The power source circuit 1800 supplies a constant voltage 1810 of 5 V from the main power source 107 to the input interface circuit 1200, CPU 1300, memory 1400, output interface circuit 1500 and operation timer circuit 1350. It also supplies another constant voltage 1820 of 5 V to the backup circuit 1700, a signal 1830 indicative of "ON" or "OFF" state of the ignition switch 10 to the input interface circuit 1200, a reset signal 1840 and a stop signal 1850 for stopping the operation of the CPU 1300 to the bus 1320, a constant voltage 1860 for the internal A/D converter to the input interface circuit 1200, and a main voltage 1870 to the signal shaper circuit 1100, drive circuit 1600 and switching circuit 1750. In addition, the power source circuit 1800 supplies a constant voltage 1800 of 5 V from the continuously connected power source to the storage holding memory 1440 for enabling same to operate even after the ignition switch 10 has been turned OFF.

Referring to FIG. 4, control programs for the control unit of the above construction and processing thereby are generally described.

The control programs comprise and can be generally devided into four groups, i.e., an initialize program 3000, a background program group 4000, an interrupt handling program group 5000 and a subprogram group 3100.

When the ignition switch 10 is turned ON and thus the main power source 107 is connected, the reset signal 1840 is generated by the power source circuit 1800, causing the control programs to be initiated to run from a RESET shown in FIG. 4. First, the initialize program 3000 is caused to run so as to set initial values in the RAM 1430, input and output interface circuits 1200, 1500 (initialization). After the initialization, the execution of the background program 4000 is caused and repeated. This program group comprises a plurality of programs listed in the corresponding items and these listed programs are caused to run sequentially in the order of arrangement of the items. Entry of an interruption signal causes an interruption if it occurs during the execution of the background program 4000, causing switching along a path as indicated by a broken arrow (1) to the interrupt handling program group 5000 which begins with INTERRUPT. (Although not so in this embodiment, the interruption of the initialize program 3000 may be possible if so desired.)

After identifying the interrupt signal, the program group 5000 selects one of a plurality of programs therein in response to the identified result and causes the selected program to run. After execution of the selected program, switching back to the interrupted portion of the background program group 4000 occurs along a path as indicated by a broken arrow (2), thus causing it to rerun.

If another new interruption signal enters during the execution of the interrupt handling program group 5000, switching to INTERRUPT along a path as indicated by a broken arrow (3) occurs, and a comparison is made between the interrupt handling program under execution and another interrupt handling program corresponding to the new interrupt signal so as to decide which one should be executed. In response to the decision result, one possibility is that the new interrupt signal causes switching to the new program corresponding to the new interrupt signal along a path as indicated by a broken line arrow (4) and after execution of this new program, the interrupted program is caused to rerun. Another possibility is that after executing the program under execution, switching occurs to the new program corresponding to the new interrupt signal along a path as indicated by a broken line arrow (50.

Among the plurality of programs belonging to the background program group 4000 and the plurality of programs belonging to the interrupt handling program group 5000, those which are frequently used are labelled as subprogram group 3100. When, during execution of a program belonging to the background program group 4000 or the interrupt handling program group 5000, a need for the above mentioned subprogram arises, switching to the subprogram 3100 occurs along a path indicated by a broken line arrow (6) or (8) or (10), causing the needed program therein to run. After the execution of this needed program, switching back to the interrupted program occurs along a path as indicated by a broken line arrow (7) or (9) or (11), causing it to rerun. Although it is possible to interrupt a subprogram under execution to cause another subprogram to be executed or to cause the interrupt handling program group 5000, this is not illustrated here in this Figure for the sake of avoiding complexity.

If an interruption of a program causes a problem, entry of such interruption can be prohibited before the execution of the program until the end of the execution.

The detail of the control programs is illustrated in FIG. 5 which is hereinafter used in detail description of the control program.

When the ignition switch 10 is turned ON and the main power source 107 is connected, the reset signal 1840 is generated, causing the initialize program 3000 to run from a specified address called "reset vector address." The initialize program 3000 is executed to prepare arrangements for execution of various programs which follow by setting initial values in the CPU 1300, RAM 1430, input/output interface circuits 1200, 1500 (initializing). With this program, all of thel ocations in the RAM to be used by this microcomputer are cleared and all of the instructions necessary for operation of the input and output interface circuits 1200, 1500 and the operation timer circuit 1350, and the operation thereof is initiated. These instructions include an instruction to release an instruction mask for handling interruption signals, an instruction to set frequency of timer interruption, an instruction to set a measuring time for measuring each of various revolution speeds and a vehicle speed, an instruction to set a constant or constants relating to each of output signal for one of various controls, and an instruction to set an initial state of each of the outputs. After initialization, an instruction authorizing an interruption is issued to the CPU 1300.

The execution of the background program 4000 continues during the normal operation of the CPU 1300, i.e., the operation of the CPU 1300 when there is no interruption requirement. With the background program group 4000, jobs which require less emergency are executed when the CPU 1300 is free, such as jobs requiring long operation time and jobs computing steady-state control constants. The background program group 4000 includes a steady-state control data computation program 4100, a low speed correction data computation program 4200, a learning control program 4300 and a check program 4400. These programs are executed sequentially in a predetermined order such that the top program is executed again after the execution of the bottom program and this cycle is repeated. In this manner, the control unit 1000 continues to generate the output signals 201, 202, 220 to 223, 240, 241 during the steady state operation of the automotive vehicle. The signals 220 to 223 are generated to control the engine 3 and the signals 240, 241 are generated for controlling the transmission 4 so as to adjust the engine 3 and the transmission 4 to the steady state operation of the automotive vehicle. The signal 201 is generated to hold the power source relay 17 in ON state so as to keep connection to the main power source 107 and the signal 202 is generated to cause the display 28 to display necessary information.

The interrupt handling program group 5000 is caused to run by an interruption of the execution of the background program group 4000 (or the initialize program 3000 if desired). The interrupt handling program group 5000 includes a timer interrupt handling program 5100 (5110, 5120, 5130) an angle coincident interrupt handling program 5200 (5210), an A/D conversion handling program 5300 (5310), an external interruption (or a privileged interruption) handling program 5400 (5410), a revolution measurement end interruption handling program 5500 (5510), an external pulse interruption handling program 5600, an overflow interruption handling program 5700, and a data receive interruption handling program 5800 (5810) which are caused to be executed by the corresponding interruptions. It also includes a group of priority-basis-executing programs which are executed on priority which is decided by a job execution priority decision program 6000, which group of programs includes an acceleration control program 6100, a deceleration control program 6200, a start control program 6300, a shift control program 6400, a lock-up control program 6500, an engine stall prevention program 6600, a time synchronizing control program 6700, an angle synchronizing control program 6750 and a data input/output program 6800.

Describing these programs subsequently, entry of a timer interrupt causes a selection of the timer interruption program 5100 where the A/D conversion activation program 5120 is executed. This program 5120 manages the measurement of analog input signals by activating the A/D converter and switching the multiplexer in effecting the A/D conversion of the analog input signals for use in the subsequent control by switching the multiplexer. Then, the clock signal output program 5110 is executed. This program generates a clock signal with a predetermined cycle which indicates normal operation of each of the CPU 1300, memory 1400, output interface circuit 1500, and thus informs the operating state of each of them. Finally, time synchronizing job activation reservation program 5130 is executed and places an activation of a time synchronizing control program 6700 (i.e., an activation requirement of this program) in the job execution priority program 6000. The time synchronizing control program processes jobs to be carried out in synchronization with a cycle of the clock signal.

Entry of an angle coincidence interruption (i.e., an interruption which occurs whenever the engine assumes a predetermined crank angle) causes the selection of the angle coincident interruption handling program 5200. This program causes an angle synchronizing job activation reservation program 5210 to place the activation (i.e., the activation requirement) of a job handling program (an angle synchronizing control program 6750) which needs to be processed in synchronization with the revolution of the engine on the job execution priority decision program 6000.

Entry of an A/D BUSSY flag check interruption causes a selection of the A/D conversion end handling program 5300 where a decision is made on checking the A/D BUSSY flag whether or not the A/D conversion has ended. When it has ended, an operation state dependent job activation reservation program 5310 instructs the storage of A/D converted data into the corresponding location in the RAM 1430 in accordance with A/D conversion channel data, and although this will be specifically described later, it decides the operation state of the automotive vehicle on a time series data of the A/D converted values relating to the acceleration signal 103 and places the activation requirement of an appropriate operation state dependent job handling program for this operating state (such as the acceleration control program, deceleration control program and start control program) on the job execution priority decision program 6000.

Entry of an external interruption causes a selection of the external interruption handling program 5400. The external interruption, i.e., an emergency interruption, is generated when the main power source 107 is disconnected. The program 5400 is selected by entry of this interruption. This program 5400 causes the execution of a power off data holding program 5410 where data to be preserved for learning control and the like are moved from the RAM 1430 to the storage holding memory 1440.

Entry of engine revolution measurement end interruption causes a selection of the revolution measurement end interruption handling program 5500. According to this program, the activation of an engine stall decision RPM computation program 5510 is caused. This program 5510, where an engine revolution speed is read to decide whether or not the engine may stall, places an activation requirement of an engine stall prevention control program 6600 on the job execution priority program 6000 when the engine may stall.

The external pulse interruption handling program 5600 is caused to be executed upon manipulation of a key on a key board or entry of a pulse signal from an external device. This program causes execution of a corresponding control to the pulse signal. The overflow interruption handling program 5700 is caused to be executed by entry of an interuption which is generated upon overflow of the timer and performs a predetermined process.

The data receive interruption handling program 5800 is caused to be executed by entry of a data receive interruption and causes the execution of the received data handling job activation program 5810. With the execution of this program 5810, the received data is stored at a predetermined location in the RAM 1430 and then the activation of the received data handling job (i.e., the requirement for the activation thereof) is placed on the job execution priority program 6000.

The job execution priority decision program 6000 receives the various activation requirements of job handling programs selected by the above mentioned interrupt handling programs and causes the contents of the corresponding bits (flags) in the RAM 1430 to the selected job programs to go from "0" to "1". Since a predetermined execution priority level is originally allocated to each job program, the sequence of location and bit for each job probram is determined in accordance with the predetermined priority level. In the case of this program, a check is made starting with the high-order bit sequentially down to the low-order bit in a location in the RAM 1430, and when a program is reserved, this program is executed and the reservation indicator is cancelled (by resetting the flag to "0"). When the execution of this program ends, the JOB execution priority decision program 6000 is executed and a reserved program of the next lower priority level is caused to be executed and the reservation therefor is cancelled, and after the execution of all of the reserved programs has ended, switching to the background program 4000 occurs.

Hereinafter, a group of those job programs which are to be executed on the priority determined by the program 6000 are described. The acceleration control program 6100 computes output control data relating to optimal fuel injection amount, ignition timing, exhaust gas recirculation flow rate, intake air flow rate, reduction ratio and lock-up schedule for the degree of acceleration. For example, in the case of a rapid acceleration (i.e., in the case of rapid increase in the accelerator signal 103), they are controlled such that for increasing the output of the engine, the fuel injection amount is increased, the ignition timing is advanced, the EGR flow rate is reduced and the intake air flow rate is increased, and in addition to increasing the output torque from the transmission 4, the lock-up of the torque converter is released and the reduction ratio is increased.

A deceleration control program 6200 computes, at deceleration, various control output data which are optimal for the degree of deceleration, vehicle speed and engine revolution speed. At deceleration, the engine 3 is controlled such that the fuel injection amount is zero or very small and the transmission 4 is controlled such that the reduction ratio and the operating state of the torque converter cooperate with each other to provide the most appropriate deceleration feel.

The start control program 6300 computes various output data for controlling the engine 3 and the transmission 4 such that a sufficiently great starting torque is obtained at the start of the automotive vehicle without causing any slip of the driving wheels 2L, 2R.

The shift control program 6400 computes various output data used for controlling the shift in the transmission 4 and the output torque and the revolution speed of the engine 3 in order to prevent substantial shocks from being transmitted to vehicle passengers during the shifting operation in the transmission 4.

The lock-up control program 6500 computes various output data for controlling lock-up operation of the torque converter and the output of the engine in order to reduce shocks occurring upon lock-up operation and release therof.

The engine stall prevention control program 6600 is caused to be executed when it is anticipated that the engine stall tends to occur by deciding a state of variation in the engine revolution speed during the execution of said program 5510. It computes various control output data so as to control the engine 3 and the transmission 4 such that, for preventing the engine stall, the engine output is increased immediately and the load is decreased.

The time snynchronizing control program 6700 which is reserved and executed after lapse of each cycle, updates various data and writes the control data of the preceding cycle into the output interface circuit 1500.

The execution of an angle synchronizing program 6750, which is reserved and executed whenever the engine 3 assumes a predetermined crank angle, updates various data and writes control data into the output interface circuit 1500.

The data input/output control program 6800, which is reserved and executed upon lapse of a predetermined time or upon entry of a data receive interruption, stores the data after deciding the content thereof upon data reception, alters the state of control and outputs of the content of the data upon effecting data transmission.

The operation of the above mentioned embodiment is described referring to a representative case wherein the automotive vehicle runs with its operating state varying. When the selection of the program 5300 is caused by the entry of the A/D BUSSY flag check interruption, the execution of the program 5310 is initiated when the A/D conversion has been completed. In this program 5310, the A/D converted data are stored at the corresponding location in the RAM 1430 in accordance with the channel data of the A/D conversion, and based on the storage data, the operating state of the automotive vehicle is decided in the process as illustrated in the flowchart shown in FIG. 6 in the manner as described hereinafter.

In a step 5311, a difference Δθ is computed between a present data θ₀ of a throttle opening degree, θ based on the accelerator signal 103, and the previous data θ₋₁ occurring a predetermined time ago. This difference Δθ expresses a variation in the throttle opening degree θ for the predetermined time, i.e., a first derivative with respect to time (a change in speed). In the subsequent step 5312, a decision is made whether or not the difference Δθ is greater than a predetermined value of Δθ_(ACC). If the decision results in YES, meaning that the automotive vehicle is at acceleration, an acceleration indicative flag F_(ACC) is set at a 1 state in a step 5316. If the decision result in the step 5312 is NO, a decision is made whether or not the difference Δθ is less than or equal to a predetermined negative value of Δθ_(DEC) in a step 5313. If this decision result is YES, meaning that the automotive vehicle is at deceleration, a deceleration indicative flag F_(DEC) is set at a 1 state in a step 5317. If the decision result in the step 5313 results in NO, a step 5314 is executed wherein a decision is made whether or not a vehicle speed V based on the output shaft revolution speed signal 140 is less than or equal to a very small predetermined value V_(ST) approaching zero. If the decision result in the step 5314 is YES, meaning that the automotive vehicle is at standstill, a decision is made in a step 5315 whether or not the throttle opening degree θ is greater than a predetermined value θ_(ST). If the decision result in the step 5315 is YES, meaning that the automotive vehicle is about to start because the throttle opening degree θ is greater than the predetermined value θ_(ST), a start indicative flag F_(ST) is set to a 1 state. If the decision result in the step 5314 is that V is less than V_(ST), the above mentioned flags remain unchanged because the automotive vehicle runs in the stable operating state. The flags, which are set in the above mentioned manner, indicate activation requirements of job programs for different transitional operation states. These flags are placed on the job execution priority decision program 6000 for reservation.

At acceleration, the program 6000 initiates the execution of the acceleration control program 6100 when its turn comes, resetting the flag F_(ACC) to a 0 state. The program 6100 is shown in FIG. 7. In a step 6110, an acceleration fuel correction coefficient KF_(ACC) is set in response to the above mentioned difference Δθ (a degree of acceleration). This coefficient is a correction coefficient greater than 1 for causing a proportional correction of the pulse width of each fuel injection pulse and it is multiplied with a base fuel injection pulse width data which has been computed on the intake air flow rate required for each crankshaft revolution in the steady-state control data computation program 4100. In this manner, the fuel injection amount is increased so that the engine 3 can increase its output in accordance with the degree of the acceleration. The coefficient KF_(ACC) is decreased by the angle synchronizing control program 6750 from its initial value each time after the engine has assumed a predetermined crank angle until it agrees with 1.0 at last. Because the above mentioned increase in the fuel injection amount decreases within the transitional period from the acceleration state to the steady-state operation, the increase in the fuel injection amount is securely suspended when the vehicle will reassume the steady-state operation, thus saving fuel for acceleration.

The control proceeds sequentially along steps 6120, 6130, and 6140. An ignition acceleration correction coefficient KI_(ACC) set in the step 6120, an exhaust gas recirculation (EGR) acceleration correction coefficient KE_(ACC) set in the step 6130 and air flow acceleration correction coefficient KA_(ACC) set in the step 6140 are used in the above mentioned manner to advance the ignition timing, decrease the exhaust gas recirculation and increase the intake air flow rate in order to increase the engine output to a sufficient extent for the acceleration state.

In the subsequent step 6150, a reduction ratio in the transmission 4 is corrected to meet the acceleration state. As it is necessary to enhance the acceleration performance during acceleration period, the reduction ratio in the transmission is corrected in such a direction as to cause an increase in acceleration degree by effecting a downshift in the transmission 4. Since the basic reduction ratio can be computed by the steady-state control data computation program 4100, it is necessary to set a flag indicative that the downshift is pending and keep this flag in the set state during acceleration (the acceleration period may be decided on variation in vehicle speed or a vehicle speed alone), and decide whether or not the downshift is to continue after checking on the state of this flag before generating the reduction ratio control output. In this manner, the output torque produced by the transmission 4 is increased by effecting the downshift in the transmission 4 for the acceleration, thus providing smooth acceleration. Since, in the above mentioned manner, the degree of correction in the reduction ratio is decreased, the transmission 4 can restore the initial reduction ratio (gear position) by the time the vehicle reassumes the steady-state running, thus preventing deterioration in fuel economy owing to the prolongation of the downshifted state.

In the subsequent step 6160, the lock-up of the torque converter is controlled in the above mentioned similar manner such that the lock-up is released during acceleration period so as to increase the output torque produced by the transmission by utilizing the torque multiplication function of the torque converter, thus providing smooth acceleration.

As described above, the engine 3 and the transmission 4 are controlled such that their respective output torques are increased for the acceleration, thus effecting an integrated control of the power train that comprises the engine and the transmission and accomplishing smooth acceleration.

During the other transitional operation state, i.e., a deceleration state or a start-up state, the job execution priority decision program 6000 initiates the execution of the deceleration control program 6200 or the start control program 6300 when its turn of execution comes and then resets the corresponding flag F_(DEC) or F_(ST) to a 0 state. These programs 6200, 6300 are executed similarly to the execution of the acceleration control program 6100. For the deceleration state, the engine 3 and the transmission 4 are controlled such that the respective outputs of the engine and the transmission are decreased to meet the requirement for the deceleration. For the start-up state, the engine 3 and the transmission 4 are controlled such that the respective outputs of the engine and the transmission rise at a speed that meets the requirements for the start-up.

As described above, it has been made possible according to the present invention to control the power train with a single control unit 1000 which is common tot he control of the engine 3 and the control of the transmission 4, resulting in a compact power train control system which has a small number of components and thus is less expensive and less liable to trouble and which is advantageous in weight. According to this control method, the engine control and the transmission control are executed in an integrated manner on high priority basis. For example, when some program is being executed, entry of operation requirement causes a job of a higher priority level to be executed interrupting the executing program, thus making it possible to control the power train with a good response characteristic and a high accuracy. 

What is claimed is:
 1. A method of controlling a power train of an automotive vehicle, the power train including an engine and a transmission drivingly connected to the engine, the method comprising the steps of:continuously detecting operating conditions of the automotive vehicle and generating operating conditions indicative signals indicative of the operating conditions detected; automatically determining a change in one of said operating conditions indicative signals and generating a change indicative signal indicative of said one determined change; comparing said change indicative signal with a plurality of predetermined values; selecting one of a plurality of control programs in response to the result of said comparing step, each of said plurality of control programs including instructions to modify operation of the engine and also operation of the transmission; and automatically initiating the execution of said selected one of said control programs, thereby causing both the engine and the transmission to modify operation as instructed by said selected one of said control programs.
 2. A method as claimed in claim 1, wherein said one of said operating conditions involve power demand on the engine and thus said operating conditions indicative signals include a power demand indicative signal indicative of the power demand detected, and said operating conditions also involve vehicle speed of the automotive vehicle and thus said operating conditions indicative signals include a vehicle speed indicative signal indicative of the vehicle speed detected.
 3. A method as claimed in claim 2, wherein said power demand is expressed in terms of a throttle opening degree of the throttle valve and said power demand indicative signal is a throttle opening degree indicative signal indicative of the throttle opening degree of the throttle valve.
 4. A method as claimed in claim 2, wherein each of said plurality of control programs includes instructions to cause the engine and transmission to cooperate with each other to vary an output torque produced by the power train.
 5. A method as claimed in claim 1, wherein each of said plurality of control programs includes an instruction to set a fuel supply correction coefficient which is used to correct fuel supply to the engine, an instruction to set an ignition timing correction coefficient which is used to correct ignition timing of the engine, an instruction to set an EGR correction coefficient which is used to correct an exhaust gas recirculation rate, an instruction to set an intake air correction coefficient which is used to correct an intake air flow rate to the engine, an instruction to shift the transmission, and an instruction to control lock-up of a torque converter of the transmission.
 6. A method of controlling a power train of an automotive vehicle, the power train including an engine with a throttle valve which opens in degrees and a transmission drivingly connected to the engine, the method comprising the steps of:continuously detecting a power demand by a driver of the automotive vehicle and generating a power demand indicative signal indicative of the detected power demand; determining a change in said power demand indicative signal and generating a change indicative signal indicative of said determined change; comparing said change indicative signal with a plurality of predetermined values; selecting one of a plurality of control programs in response to the result of said comparing step, each of said control programs including instructions to modify operation of the engine and also operation of the transmission; and initiating the execution of said selected one of said control programs, thereby causing the engine and the transmission to modify operations thereof as instructed by said selected one of said control programs. 